Can't shake the devil's hand and say you're only kidding - TMBG
+++++++++++++++++++++++++++
From: ewylie@ocf.berkeley.edu (Elizabeth Wylie)
Date: 22 Jul 92 20:43:38 GMT
Organization: U. C. Berkeley Open Computing Facility
I have a cool piece of shareware on my hard disk which seems to handle this whole name/serial number thing quite well.
It works entirely on the humiliation-ware concept. Nobody wants someone else's name emblazoned on their $10 piece of software. How low can you get?
So anyway the program makes you send in for your super-secret registration code. This code is a really wierded-out checksum/encryption of your name.
So, for every name, there is a different secret code. The program won't let you have a mismatching code/serial number. It'll just say "Unregistered User".
Now, you could incorporate the user's name AND the serial number. Use a lot of XORs and tricky bit shifting to get a suitable ugly checksum and then convert it to a long (10 digits or so) decimal number.
Anyway, that's what FinderWindows seems to do. An excellent program, by the way. It adds a windows menu to the finder and other programs. Lets me keep 20 or so windows open on my screen and not lose a single one.
(Thanks Damon!)
- -E Wylie
+++++++++++++++++++++++++++
From: peirce@outpost.SF-Bay.org (Michael Peirce)
Date: 23 Jul 92 00:38:50 GMT
Organization: Peirce Software
In article <14kh9qINNds5@agate.berkeley.edu> (comp.sys.mac.programmer), ewylie@ocf.berkeley.edu (Elizabeth Wylie) writes:
> I have a cool piece of shareware on my hard disk which seems to
> handle this whole name/serial number thing quite well.
>
> It works entirely on the humiliation-ware concept. Nobody wants
> someone else's name emblazoned on their $10 piece of software.
> How low can you get?
>
> So anyway the program makes you send in for your super-secret
> registration code. This code is a really wierded-out
> checksum/encryption of your name.
>
> So, for every name, there is a different secret code. The
> program won't let you have a mismatching code/serial number.
> It'll just say "Unregistered User".
>
> Now, you could incorporate the user's name AND the serial
> number. Use a lot of XORs and tricky bit shifting to get a
> suitable ugly checksum and then convert it to a long (10 digits
> or so) decimal number.
>
> Anyway, that's what FinderWindows seems to do. An excellent
> program, by the way. It adds a windows menu to the finder and
> other programs. Lets me keep 20 or so windows open on my
> screen and not lose a single one.
My shareware program, AppSizer, does something very similar. Since
it's a INIT/Control Panel, I added one more twist. In addition to
simply flashing unregistered copy in its windows, it also puts up
a message once a month that reminds them of this fact too. This extra
prompt will often remind them even after they get used to the unregistered
user message in the windows. And a number of my registed users mention
that this is what reminded them to register.
- -- Michael Peirce -- peirce@outpost.SF-Bay.org
- -- Peirce Software -- Suite 301, 719 Hibiscus Place
Kenneth H. Wieschhoff, Jr. | "If you want to f*** with
(716)426-3317(w) | the Eagles, you gotta learn
kenw@ssd.kodak.com | to fly" -->Heathers
+++++++++++++++++++++++++++
From: ewylie@ocf.berkeley.edu (Elizabeth Wylie)
Date: 23 Jul 92 18:24:17 GMT
Organization: U.C. Berkeley Open Computing Facility
- ---------
A good way to keep users from running software from servers is to disable
the capability completely. When an application is started, doing a
GetVol( volumeName, &fVRefNum); when the app launches retrieves the
volume reference. Use the following routine to determine if a vol ref is
a network volume.
- ---------
To say the least it's a good way to piss off hundreds of your users. Copy protection is a thing of the past.
OVERCHARGE ! OVERCHARGE ! OVERCHARGE !
E. Wylie
.
+++++++++++++++++++++++++++
From: lari@bach.cs.unc.edu (Humayun Lari)
Date: 23 Jul 92 19:18:28 GMT
Organization: University of North Carolina, Chapel Hill
In article <D88-JWA.92Jul23100813@dront.nada.kth.se> d88-jwa@dront.nada.kth.se (Jon W{tte) writes:
>.50.3> peter@cujo.curtin.edu.au (Peter N Lewis) writes:
> sake turn macsbug name generation off before you compile it! I have seen
> several commercial apps with names turned on in their code checking code,
> pretty impressive guys :-)
>
>I see MacsBug symbols as a user service ! More than once have I had
>spontaneous crashes, and only the debugger names helped me figure
>out what was going on. Not to mention a dedicated user can provide
>excellent feedback for Tech Support if the names still are in there,
>like, fixing their bugs :-)
Oh, definitely. I was using a release version of a language that should have
stayed in beta for a couple more months -- to be precise, it occasionally
crashed as soon as you tried to run your program. One day, it decided to hang,
and for some inexplicable reason :-) it had been some time since I'd saved.
It was Macsbug time; the only problem was that there was no debugger switch
on the Mac Plus -- it was a public lab, so naturally they didn't want users
accidentally bombing the machine. So <sigh> I stuck the strap of my wristwatch
into the side of the Plus until it hit the switch, looked up the event loop
in Macsbug, and typed something like "g event"...
Amazingly, it worked. :-)
Humayun Lari
(lari@cs.unc.edu)
+++++++++++++++++++++++++++
From: ewylie@ocf.berkeley.edu (Elizabeth Wylie)
Date: 23 Jul 1992 21:36:21 GMT
Organization: U.C. Berkeley Open Computing Facility
>I see MacsBug symbols as a user service ! More than once have I had
>spontaneous crashes, and only the debugger names helped me figure
>out what was going on. Not to mention a dedicated user can provide
>excellent feedback for Tech Support if the names still are in there,
>like, fixing their bugs :-)
I think the point the original poster was trying to make was it's much easier to berak copy protection schemes when there are macsbug labels like "CHECKPASSWORD", "COPY_PROTECTION_HERE", "BACKOFF_HACKERS" and "THIS_IS_IT".
On especially large projects you can save several K by not including macsbug names. Keep 'em in your beta version, not in the final release.
(You *DO* write betas, don't you? And you *DO* have more than one person (your kid sister doesn't count) test for you?)
- -E Wylie
.
+++++++++++++++++++++++++++
From: d88-jwa@dront.nada.kth.se (Jon W{tte)
Date: 23 Jul 92 22:28:29 GMT
Organization: Royal Institute of Technology, Stockholm, Sweden
.kodak.com> Ken Wieschhoff <kenw@ssd.kodak.com> writes:
A good way to keep users from running software from servers is to disable
the capability completely. When an application is started, doing a
GetVol( volumeName, &fVRefNum); when the app launches retrieves the
volume reference. Use the following routine to determine if a vol ref is
a network volume.
Do you think users with System 7 file sharing would
ever consider buying your program ?
PLAY BY THE RULES !
- --
Jon W{tte, Svartmangatan 18, S-111 29 Stockholm, Sweden
### You have the Easy Access virus. This virus may cause strange sounds.
### You have the 24-bit virus. This virus eats system memory like CRAZY.
+++++++++++++++++++++++++++
From: kenw@ssd.kodak.com (Ken Wieschhoff)
Date: 24 Jul 92 14:30:47 GMT
Organization: Eastman Kodak Company
>Do you think users with System 7 file sharing would
>ever consider buying your program ?
>
>PLAY BY THE RULES !
What rules? Buy yer own goddamned copy! If you're following
the thread, there's concern about placing a serial number
into the resource fork of the fuckin' file. You don't want
to do that if you're on a network volume do you?
Kenneth H. Wieschhoff, Jr. | "If you want to f*** with
Organization: Royal Institute of Technology, Stockholm, Sweden
@ocf.berkeley.edu (Elizabeth Wylie) writes:
On especially large projects you can save several K by not including macsbug names. Keep 'em in your beta version, not in the final release.
But I'm not a beta tester. I still want to know what goes wrong
and how to fix it !
(You *DO* write betas, don't you? And you *DO* have more than one person (your kid sister doesn't count) test for you?)
Yes of course. A few Ks don't matter much, and I like getting
mail from people who fix my bugs :-) I want others to feel the
same way since there STILL is bugs in released software.
- --
Jon W{tte, Svartmangatan 18, S-111 29 Stockholm, Sweden
### You have the Easy Access virus. This virus may cause strange sounds.
### You have the 24-bit virus. This virus eats system memory like CRAZY.
+++++++++++++++++++++++++++
From: ewylie@ocf.berkeley.edu (Elizabeth Wylie)
Date: 24 Jul 92 01:21:20 GMT
Organization: U.C. Berkeley Open Computing Facility
In article <D88-JWA.92Jul24000856@dront.nada.kth.se> d88-jwa@dront.nada.kth.se (Jon W{tte) writes:
>But I'm not a beta tester. I still want to know what goes wrong
>and how to fix it !
A good point.
>
> (You *DO* write betas, don't you? And you *DO* have more than one person (your kid sister doesn't count) test for you?)
>Yes of course. A few Ks don't matter much, and I like getting
>mail from people who fix my bugs :-) I want others to feel the
>same way since there STILL is bugs in released software.
When writing INITs, etc. I always make sure to keep the names off for the "final" release. I'm really obsessive about system heap size. Mine is 4 meg on an 8 meg machine.
It also gives me that "polishedd" feeling when I'm finally done with it.
- -E. Wylie
.
+++++++++++++++++++++++++++
From: peter@cujo.curtin.edu.au (Peter N Lewis)
Organization: NCRPDA, Curtin University
Date: Mon, 27 Jul 1992 09:02:36 GMT
In article <D88-JWA.92Jul23232829@dront.nada.kth.se>,
d88-jwa@dront.nada.kth.se (Jon W{tte) wrote:
> A good way to keep users from running software from servers is to disable
> the capability completely. When an application is started, doing a
> GetVol( volumeName, &fVRefNum); when the app launches retrieves the
> volume reference. Use the following routine to determine if a vol ref is
> a network volume.
>
> Do you think users with System 7 file sharing would
> ever consider buying your program ?
I hate to inject some actual technical information in here, especially when
you are refuting an argument that actually suggests programs should
disallow themselves to be run from a server (the stupidest thing I've heard
in a long while, practically every program we have hear we have a single
user license and a single copy on the server with the shared bit off so
only one user can use it at a time), BUT, even under System 7 with file
sharing turned on, the local volumes still have a 0 in the server address
field. It's most annoying really - does anyone know how to get the
FileSharing port number for the local machine, the only way I've found to
do it is either an PConfirmName('=:AFPServer@*') to this machine (which I
think should actually fail because meta chars are not allowed in
PConfirmName, but seems to work anyway), or NBPLookup('=:AFPServer@*') and
then search thru for the local machine's net/node number.
Have fun all, and don't expect me to pay for (and hence use) any app I
can't use from my server - it'll go straight back for a refund.